:root {
  --menu-border-width: 5px;
  --menu-mini-width: 2.5rem;
  --menu-maxi-width: 15.625rem;
  --menu-slide-margin: -13.125rem;
  --padding-xs: 2.5px;
  --padding-s: 5px;
  --padding-r: 7.5px;
  --padding-m: 10px;
  --padding-l: 15px;
  --padding-xl: 20px;
  --padding-2xl: 25px;
  --padding-3xl: 30px;
  --padding-4xl: 35px;
  --padding-5xl: 40px;
  --padding-6xl: 45px;
  --padding-7xl: 50px;
  --negative-padding-s: -5px;
  --negative-padding-m: -10px;
  --negative-padding-l: -15px;
  --negative-padding-xl: -20px;
  --print-padding-s: 1.25pt;
  --print-padding-r: 2.5pt;
  --print-padding-m: 5pt;
  --print-padding-l: 10pt;
  --print-padding-xl: 15pt;
  --print-padding-2xl: 20pt;
  --variable-horizontal-padding-xs: .3125rem;
  --variable-horizontal-padding-s: .9375rem;
  --variable-horizontal-padding-m: 1.875rem;
  --variable-horizontal-padding-l: 2.8125rem;
  --negative-variable-horizontal-padding-s: -.9375rem;
  --negative-variable-horizontal-padding-m: -1.875rem;
  --variable-vertical-padding-m: .625rem;
  --variable-vertical-padding-l: 1.25rem;
  --variable-vertical-padding-xl: 2.5rem;
  --icon-size-s: 1.125rem;
  --icon-size-m: 1.5rem;
  --icon-size-l: 2rem; }

@media (max-width: 75rem) {
  :root {
    --menu-horizontal-padding: 1rem;
    --menu-horizontal-negative-margin: -1rem;
    --menu-link-padding: calc( 1rem - 5px );
    --menu-sub-link-padding: calc( 1rem + 5px ); } }

@media (min-width: 75rem) {
  :root {
    --menu-horizontal-padding: 2rem;
    --menu-horizontal-negative-margin: -2rem;
    --menu-link-padding: calc( 2rem - 5px );
    --menu-maxi-width: 18.75rem;
    --menu-slide-margin: -16.25rem;
    --menu-sub-link-padding: calc( 2rem + 10px ); } }

body.caerp {
  /* Attestation SAP */ }
  body.caerp[class*="preview-view"] img.wtmk {
    height: auto;
    max-height: 100vh;
    opacity: .33;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2; }
  body.caerp .task_header {
    margin: var(--padding-s); }
    body.caerp .task_header .full_banner {
      height: auto;
      max-width: 100%; }
    body.caerp .task_header .pdf_logo {
      border: 0 none white;
      width: auto; }
      body.caerp .task_header .pdf_logo tr {
        background: none !important; }
      body.caerp .task_header .pdf_logo td {
        border: 0 none white;
        text-align: left;
        vertical-align: middle; }
        body.caerp .task_header .pdf_logo td.logo_cell {
          height: 140px;
          overflow: hidden;
          width: 140px; }
      body.caerp .task_header .pdf_logo .logo_img {
        height: auto;
        width: 128px; }
    body.caerp .task_header .pdf_address_block {
      display: flex;
      justify-content: flex-end; }
      body.caerp .task_header .pdf_address_block > div {
        background: rgba(255, 255, 255, 0.7);
        display: inline-block;
        margin-right: 3em;
        position: relative;
        width: 23em;
        padding: var(--padding-3xl); }
        body.caerp .task_header .pdf_address_block > div .corner {
          border: 1px dotted #b0b0b0;
          height: 2em;
          display: block;
          position: absolute;
          width: 2em; }
          body.caerp .task_header .pdf_address_block > div .corner.bottom {
            border-top-width: 0;
            bottom: 0; }
          body.caerp .task_header .pdf_address_block > div .corner.left {
            border-right-width: 0;
            left: 0; }
          body.caerp .task_header .pdf_address_block > div .corner.right {
            border-left-width: 0;
            right: 0; }
          body.caerp .task_header .pdf_address_block > div .corner.top {
            border-bottom-width: 0;
            top: 0; }
  body.caerp .task_view {
    background: white;
    color: black; }
    body.caerp .task_view.tab_preview {
      box-shadow: none;
      position: relative; }
      body.caerp .task_view.tab_preview img.wtmk {
        height: auto;
        max-height: 100%;
        opacity: .33;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 2; }
    body.caerp .task_view > div {
      margin: var(--padding-s); }
      body.caerp .task_view > div .pdf_mention_block {
        margin-left: 0;
        margin-right: 0; }
    body.caerp .task_view .pdf_information {
      font-size: .875em; }
      body.caerp .task_view .pdf_information h1 {
        font-size: 1.25rem;
        padding: var(--padding-s) 0; }
      body.caerp .task_view .pdf_information .coop_header {
        background: rgba(255, 255, 255, 0.7);
        border: 3px solid #efefef;
        margin-top: var(--padding-s);
        padding: var(--padding-s); }
      body.caerp .task_view .pdf_information .info_cols {
        align-items: flex-end;
        display: flex;
        justify-content: space-between;
        padding-bottom: 15px; }
        body.caerp .task_view .pdf_information .info_cols .customer_info {
          flex: 0 0 calc(26rem - 30px);
          margin-left: var(--padding-s);
          padding-top: .75em; }
    body.caerp .task_view .pdf_mention_block {
      background: rgba(255, 255, 255, 0.7);
      border: 3px solid #efefef;
      margin: var(--padding-l) var(--padding-s) 0; }
      body.caerp .task_view .pdf_mention_block h4 {
        background: #efefef;
        border: none;
        color: black;
        padding: 0 var(--padding-s) var(--padding-xs); }
      body.caerp .task_view .pdf_mention_block p {
        font-size: .875rem;
        padding: var(--padding-s); }
      body.caerp .task_view .pdf_mention_block th[scope="col"] {
        height: inherit; }
    body.caerp .task_view .document_help {
      font-size: .75rem; }
    body.caerp .task_view .notes_group {
      display: flex;
      flex-wrap: wrap;
      justify-content: stretch; }
      body.caerp .task_view .notes_group > div {
        flex: 1 1 calc(50% - 5px); }
        body.caerp .task_view .notes_group > div.options {
          display: flex;
          flex-direction: column;
          justify-content: center; }
        body.caerp .task_view .notes_group > div + div:nth-child(2n) {
          margin-left: var(--padding-s); }
    body.caerp .task_view .payment_conditions > div {
      align-items: flex-start;
      display: flex;
      justify-content: space-between;
      padding: var(--padding-s); }
      body.caerp .task_view .payment_conditions > div p,
      body.caerp .task_view .payment_conditions > div > div {
        flex: 0 0 50%; }
      body.caerp .task_view .payment_conditions > div p {
        padding: 0 var(--padding-s) 0 0; }
      body.caerp .task_view .payment_conditions > div > div {
        padding-left: var(--padding-s); }
    body.caerp .task_view .estimation_last_mention {
      align-items: flex-start;
      display: flex;
      justify-content: space-between;
      margin: 0 var(--padding-s); }
      body.caerp .task_view .estimation_last_mention .pdf_mention_block {
        flex: 0 0 calc(100% - 19em); }
      body.caerp .task_view .estimation_last_mention .pdf_sign_block {
        margin: var(--padding-l) 0 0;
        flex: 0 0 18em; }
        body.caerp .task_view .estimation_last_mention .pdf_sign_block > div {
          border: 3px solid #efefef;
          width: 18em; }
          body.caerp .task_view .estimation_last_mention .pdf_sign_block > div h4 {
            background: #efefef;
            padding: 0 var(--padding-s) var(--padding-xs); }
          body.caerp .task_view .estimation_last_mention .pdf_sign_block > div p {
            padding: var(--padding-m); }
          body.caerp .task_view .estimation_last_mention .pdf_sign_block > div .signature {
            height: 6em; }
    body.caerp .task_view .pdf_task_table {
      margin-bottom: var(--padding-xl);
      margin-top: var(--padding-m); }
      body.caerp .task_view .pdf_task_table + .pdf_task_table {
        margin-top: var(--negative-padding-m); }
      body.caerp .task_view .pdf_task_table h1 {
        background: none;
        color: black; }
      body.caerp .task_view .pdf_task_table table {
        border-width: 0; }
        body.caerp .task_view .pdf_task_table table:first-child {
          border-top-width: 2px; }
        body.caerp .task_view .pdf_task_table table:last-child {
          border-bottom-width: 2px; }
        body.caerp .task_view .pdf_task_table table .group_description .col_text {
          padding-bottom: var(--padding-m); }
        body.caerp .task_view .pdf_task_table table .group_description h2 {
          font-size: 1.125rem; }
        body.caerp .task_view .pdf_task_table table .group_description td {
          border-top-width: 2px; }
        body.caerp .task_view .pdf_task_table table .group_description p {
          margin: 0;
          padding: 0; }
        body.caerp .task_view .pdf_task_table table .work_item td {
          border-top-style: dashed; }
          body.caerp .task_view .pdf_task_table table .work_item td:first-child {
            padding-left: var(--padding-xl); }
        body.caerp .task_view .pdf_task_table table .table_head th,
        body.caerp .task_view .pdf_task_table table .table_head td {
          color: #444444; }
    body.caerp .task_view .pdf_spacer {
      display: none; }
    body.caerp .task_view table {
      background: rgba(255, 255, 255, 0.7);
      border-collapse: collapse;
      border: 1px solid #c4c4c4;
      border-width: 2px 0;
      width: 100%; }
      body.caerp .task_view table + table {
        border-top-width: 0;
        margin-top: -1px; }
      body.caerp .task_view table tbody th,
      body.caerp .task_view table tbody td,
      body.caerp .task_view table thead th,
      body.caerp .task_view table thead td,
      body.caerp .task_view table tfoot th,
      body.caerp .task_view table tfoot td {
        background: none;
        border: 1px solid #c4c4c4;
        border-width: 1px 0 0;
        padding: 4px; }
      body.caerp .task_view table tbody th,
      body.caerp .task_view table thead th,
      body.caerp .task_view table tfoot th {
        vertical-align: bottom; }
      body.caerp .task_view table tbody th[scope="col"],
      body.caerp .task_view table thead th[scope="col"],
      body.caerp .task_view table tfoot th[scope="col"] {
        border-top-width: 0;
        line-height: 1; }
      body.caerp .task_view table tbody td,
      body.caerp .task_view table thead td,
      body.caerp .task_view table tfoot td {
        vertical-align: top; }
        body.caerp .task_view table tbody td.empty,
        body.caerp .task_view table thead td.empty,
        body.caerp .task_view table tfoot td.empty {
          padding: 0; }
      body.caerp .task_view table tbody td.empty,
      body.caerp .task_view table thead td.empty,
      body.caerp .task_view table tfoot td.empty {
        border-width: 0; }
      body.caerp .task_view table tbody tr:nth-child(2n+1),
      body.caerp .task_view table thead tr:nth-child(2n+1),
      body.caerp .task_view table tfoot tr:nth-child(2n+1) {
        background: none !important; }
      body.caerp .task_view table tbody td.archive,
      body.caerp .task_view table thead td.archive,
      body.caerp .task_view table tfoot td.archive {
        color: #757575;
        font-style: italic; }
      body.caerp .task_view table tbody tr.long_description td,
      body.caerp .task_view table thead tr.long_description td,
      body.caerp .task_view table tfoot tr.long_description td {
        border-width: 0;
        padding: 0 4px 4px; }
      body.caerp .task_view table tbody tr.row_total th,
      body.caerp .task_view table tbody tr.row_total td,
      body.caerp .task_view table thead tr.row_total th,
      body.caerp .task_view table thead tr.row_total td,
      body.caerp .task_view table tfoot tr.row_total th,
      body.caerp .task_view table tfoot tr.row_total td {
        font-weight: bold; }
      body.caerp .task_view table tbody tr:not(:first-child) th.progress_invoicing {
        border-top-width: 0; }
      body.caerp .task_view table .col_text {
        hyphens: auto;
        text-align: left; }
        body.caerp .task_view table .col_text.description {
          overflow-wrap: anywhere; }
          body.caerp .task_view table .col_text.description h1,
          body.caerp .task_view table .col_text.description h2,
          body.caerp .task_view table .col_text.description h3,
          body.caerp .task_view table .col_text.description h4,
          body.caerp .task_view table .col_text.description h5,
          body.caerp .task_view table .col_text.description h6 {
            font-weight: bold;
            margin: 0;
            padding: 0 0 var(--padding-s); }
          body.caerp .task_view table .col_text.description h1 {
            font-size: 1.25rem;
            line-height: 1rem; }
          body.caerp .task_view table .col_text.description h2 {
            font-size: 1.125rem;
            line-height: 1rem; }
          body.caerp .task_view table .col_text.description h3,
          body.caerp .task_view table .col_text.description h4,
          body.caerp .task_view table .col_text.description h5,
          body.caerp .task_view table .col_text.description h6 {
            font-size: 1rem; }
        body.caerp .task_view table .col_text.unity {
          overflow-wrap: break-word;
          width: 5em; }
        body.caerp .task_view table .col_text.align_right {
          text-align: right; }
        body.caerp .task_view table .col_text.rich_text ul {
          list-style-position: outside;
          margin-left: var(--padding-xl); }
          body.caerp .task_view table .col_text.rich_text ul li:first-child {
            padding-top: 4px; }
          body.caerp .task_view table .col_text.rich_text ul li:last-child {
            padding-bottom: 0; }
      body.caerp .task_view table tr.work_description h3.work_title {
        padding: 0; }
        body.caerp .task_view table tr.work_description h3.work_title + * {
          padding-top: var(--padding-s); }
      body.caerp .task_view table tr.work_description .col_number,
      body.caerp .task_view table tr.work_description .col_text.unity {
        font-weight: bold; }
      body.caerp .task_view table .col_date {
        width: 8em; }
      body.caerp .task_view table .price,
      body.caerp .task_view table .price_total {
        width: 6em; }
      body.caerp .task_view table .progress_invoicing {
        text-align: center;
        width: 4em; }
      body.caerp .task_view table .deposit {
        width: 5.5em; }
      body.caerp .task_view table .price_total {
        background: #f9f9f9; }
      body.caerp .task_view table .quantity {
        width: 3em; }
      body.caerp .task_view table .tva {
        width: 4em; }
    body.caerp .task_view .cgv-container {
      border-top: 1px dashed var(--border-color);
      margin-top: var(--padding-xl); }
  body.caerp .pdf_footer {
    background: #f9f9f9;
    font-size: .75rem;
    margin: var(--padding-xl) var(--negative-padding-s) var(--padding-s);
    padding: var(--padding-s) var(--padding-s) 0;
    text-align: center; }
    body.caerp .pdf_footer h4 {
      font-size: .75rem;
      padding-top: var(--padding-m); }
    body.caerp .pdf_footer p:last-child {
      padding-bottom: var(--padding-s); }
  body.caerp .pdf_page_number {
    font-size: .875rem;
    text-align: center; }
    body.caerp .pdf_page_number .page_count {
      display: none; }
  body.caerp .cgv-container {
    border-top: 1px dashed #bfbfbf;
    margin: var(--padding-3xl) 0 var(--padding-s); }
  body.caerp .pdf_cgv {
    font-size: .75rem;
    padding: var(--padding-xl) var(--padding-s);
    text-align: justify; }
  body.caerp .sap_group {
    border-bottom-width: 0; }
  body.caerp .sap_month {
    width: 12em; }
  body.caerp .sap_label {
    width: 18em; }
  body.caerp .sap_bottom_mention,
  body.caerp .sap_bottom_signature {
    width: 50%; }
  body.caerp .sap_bottom_signature {
    text-align: right; }
    body.caerp .sap_bottom_signature img {
      max-width: 12rem;
      max-height: 12rem; }

body.caerp.caerp_popup[class*="preview-view"] .main_area {
  padding: 5px; }

body.caerp.caerp_popup .pdf_footer {
  margin: var(--padding-s) 0; }

body.caerp.caerp_popup .pdf_cgv {
  padding: var(--padding-xl) var(--padding-m); }

@media (max-width: 50rem) {
  body.caerp .tab-content .layout.two_cols > * {
    width: 100%; }
  body.caerp .tab-content .layout.two_cols > div {
    padding-left: 0;
    padding-right: 0; }
  body.caerp .tab-content .task_view.tab_preview {
    overflow-x: auto; }
    body.caerp .tab-content .task_view.tab_preview > * {
      min-width: 52em; } }

body.caerp.pdf_export html {
  font-size: 9pt; }
